package org.bouncycastle.asn1;
import java.io.InputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
public class BEROctetStringParser
implements ASN1OctetStringParser
{
private ASN1ObjectParser _parser;
protected BEROctetStringParser(
ASN1ObjectParser parser)
{
_parser = parser;
}
public InputStream getOctetStream()
{
return new ConstructedOctetStream(_parser);
}
public DERObject getDERObject()
{
ByteArrayOutputStream bOut = new ByteArrayOutputStream();
InputStream in = this.getOctetStream();
int ch;
try
{
while ((ch = in.read()) >= 0)
{
bOut.write(ch);
}
}
catch (IOException e)
{
throw new IllegalStateException("IOException converting stream to byte array: " + e.getMessage());
}
return new BERConstructedOctetString(bOut.toByteArray());
}
}